Multi-cast communication system and method of estimating channel impulse responses therein

ABSTRACT

Multiple Steiner codes are transmitted as bursts (s 11 , S 12 , . . . S 33   , 560, 524 ) from multiple base stations ( 182, 184, 186 ) having one or more transmit elements ( 174, 176, 178, 180 ), with successive bursts providing an extended training sequence for use in channel estimation at an addressed unit ( 172 ), such as a mobile handset. Accurate channel estimation is possible through the use of Wiener frequency domain MMSE deconvolution ( 518 ) combined with frequency domain spatial decoupling matrices, with quasi-orthogonal pseudo-noise sequences ( 502, 504, 520, 522 ) allocated to base stations and their antenna elements. The use of Steiner codes to supplement Wiener frequency domain MMSE deconvolution and frequency domain spatial decoupling results in the possibility of allocating only a single training sequence to each base station provided that the training sequence is of sufficient length to encompass all multiple time-translated channel impulse responses (H).

BACKGROUND OF THE INVENTION

[0001] This invention relates, in general, to a multi-cast communication system and a method of estimating channel impulse response (IR) therein, and is particularly, but not exclusively, applicable to communication environments employing space-time coding. The present invention is also applicable, without imposing limitation, to code division multiple access (CDMA) schemes, orthogonal frequency division multiplexing (OFDM) or the global system for mobile (GSM) communication, and also to systems having base stations configured to transmit on either a time-aligned or unsynchronised basis.

SUMMARY OF THE PRIOR ART

[0002] GSM, CDMA, and OFDM systems and those systems using space-time coding usually require estimation of impulse responses (IR's) between a terminal antenna and several base antennas, especially in instances when the relative signal strengths of the base stations are similar. As will be understood, the physical channel through which propagation occurs can have a severely detrimental effect on the ability to recover data accurately, especially with increasing data rates. Consequently, by knowing the IR, compensation for channel-induced defects can be applied to improve accuracy in data recovery, e.g. through interference cancellation techniques. More especially, with multiple transmit elements at a base station, irrespective of whether there is more than one serving base station, multipath interference results in an inability to resolve individual channels. Indeed, even orthogonally structured data (such as different and time dispersed training sequences) can become cross-correlated (in the face of multipath interference) and hence unusable to resolve individual channels/paths in the context of a deterministic IR approach. Furthermore, it will be appreciated that IR determination is particularly taxing at a handoff point at cell boundaries of, potentially, two or three serving base stations (or Node Bs in the context of CDMA and the Universal Mobile Telecommunications System (UMTS)). At cell-boundary handover, the issue of IR is complicated by that fact that downlink carrier to interference ratios (CIRs) can be zero or negative.

[0003] When available, impulse responses can also be used to assist in downlink softhandover.

[0004] The use of matched filtering of standard training sequences to determine channel IR's is considered adequate to drive fingers of a RAKE filter in CDMA applications, such as IS-95 and CDMA2000, given that incoherent soft handoff is also allowed. However, more recent cellular system proposals will stretch matched filtering techniques to their limits and beyond due to the use of higher data throughputs (with more bits per symbol, e.g. higher quadrature amplitude modulation QAM levels) requiring higher energy per bit/noise floor (E_(b)/N_(o)) than existing systems, such as IS-95. Such higher data rate cellular systems include the Enhanced Data-rate for GSM Evolution (EDGE) system.

[0005] In any event, interference cancellation, coherent soft hand-off or space-time coding generally requires a more accurate estimate of channel propagation conditions (than that required with RAKE filtering or matched filtering). In this respect, a long history of interference cancelling base station algorithms (that yield indifferent null-steering performance) lends support to this view.

[0006] In terms of proposed 3G (third generation) cellular systems, it is known to use training sequences with a cyclic prefix for pilot tones in orthogonal frequency division multiplexing (OFDM) and CDMA. When a channel has an impulse response of known maximum duration, the use of Steiner codes allows re-use of the same training sequence with a time-offset method to measure simultaneously the channel impulse responses of several users or several antenna with a single fast Fourier transform (FFT) operation Steiner codes are discussed in the paper “A comparison of uplink channel estimation techniques for MC/JD-CDMA transmission systems” by B. Steiner and R. Valentin, Proceedings IEEE 5th International Symposium on Spread Spectrum Techniques and Applications 1998, Volume: 2, pp. 640-646. Indeed, cyclic Steiner codes are found in the pilot tones for the time division duplex (TDD) component of European UMTS, as presented in the ETSI 3GPP Document TS25.211 “Transport channels and physical channels” v.3.2.0, 1999. In terms of a frame structure for a pilot tone, random data sectors sandwich an observation window that is preceded by a cyclic prefix of a latter portion of the observation window. Provided that the duration of the cyclic prefix exceeds the channel impulse response, then data in the observation window is a function purely of the pilot sequence (comprised from the combination of the cyclic prefix and data in the observation window) and is not corrupted by spurious unknown data in any way.

[0007] The 3G Partnership Project (3GPP) have defined training sequences for TDD (time division duplex) having overall chip lengths of 256 and 512 chips; the overall lengths are derived from 192 chips and 464 chips of basic pseudo-random number sequence codes with, respectively, an additional cyclic prefix of either 64 chips and 114 chips. Each training sequences is designed to allow channel impulse response estimation for differing numbers of users, namely three users in the case of the 256-chip training sequence and eight users in the case of the 512-chip training sequence.

[0008] The training sequences are utilised in the receiving unit to estimate the channel impulse response based on a complex cross-correlation (in real and imaginary phase and amplitude components) between received chips and a local replica of the training sequence. In this regard, it is usual, on a per channel basis, to take a correlation of the channel impulse response (h) with the sequence (s) from the transmitter. More particularly, from a single base station having multiple transmit elements, cyclic offsetting of Steiner codes allows utilisation of a fast Fourier transform (FFT) technique to solve individual channel impulse responses. Steiner cyclic pilot codes can therefore be used in estimating, with a single correlator, channel impulse responses of multiple users that do not mutually interfere. Steiner codes may be Gold codes.

[0009] As will be understood, the requirement for cyclic redundancy to mitigate data corruption caused by multipath may be obviated provided that the length of the transmitted training sequence (or pilot tone) is sufficiently long. In generality, cyclic redundancy may be avoided if a training sequence contains a sufficient number of chips, with the overall length of the training sequence determined by the prevailing dispersion conditions associated with the channel. Additionally, for estimating CIR, it is also necessary to consider the physical state of the receiving unit, since the channel for a slow moving or stationary receiving unit (e.g. a handheld device) is ostensibly stable, i.e. constant.

[0010] By way of practical explanation of Steiner code operation from a dual element array of a base station transmitter, it will be appreciated that, in estimating the two channels from the two radiating elements to a single receive antenna, the two radiating elements use a common generic pseudorandom number (PN) training sequence {s₁, s₂} which is end-around shifted (in this case by half a block) to {s₂, S₁} for the second element. The two channel impulse responses are {h₁}, {h₂} and the receiver antenna sees the superposition of the two convolved sequences:

{y}={s ₁ , s ₂ }{circle over (x)}{h ₁ }+{s ₂ , s ₁ }{circle over (x)}{h ₂}

[0011] where {circle over (x)} means a discrete-time convolution operation. When the receiver output is correlated with the PN sequence of the first antenna, the impulse responses of the two distinct channels are recovered in superposed form with a relative time shift of half a block. If the maximum probable duration of the impulse responses is finite and known and less than half the PN code length, the two channel estimates are non-overlapping and orthogonal and can be recovered by slicing into two halves an output of a correlator block. Clearly the process extends easily to estimating M channels by splitting the generic PN sequence into M segments {s ₁, s ₂, . . . s _(M)}, where {s} means a short symbol sequence, and wherein transmissions from the base antenna transmit elements follow the sequences {S ₁, S ₂, . . . S _(M)}, {S _(M), S ₁, . . . S ₁, . . . S _(M−1)}, . . . {S _(M−1), S _(M), S _(M−2)}.

[0012] At the receive antenna, the processing block is correlated with only the first copy, {S₁, S₂, . . . S_(M)} of the PN sequence whereupon, at the correlator output, the M different channel impulse responses separate out in time and appear in sequence. Clearly, the cyclic head is different for each downlink path, but this is purely a transmitter burden, whereas the receiver samples the waveform and continues to see the same rotated training sequence. In this way, a common discrete Fourier Transform operation can be used to resolve multiple downlink channel impulse responses.

[0013] As previously indicated, in order to avoid contamination with unknown data which usually immediately precedes the training sequence, a cyclic copy of the end of each rotated sequence may be prefixed at the start of the pilot block. In other words, when working with, say, 512-point processing blocks and when the duration of the channel impulse response is K samples, the total extent of the transmitted pilot burst is 512+K samples of which the first K contaminated samples are discarded at the receiver.

[0014] The maximum number M of channel impulse responses that can be estimated by the Steiner method is: $M \leq \frac{N}{K}$

[0015] where N is the length of the training sequence (samples) and K is the maximum likely number of samples in the channel impulse response.

[0016] Unfortunately, with Steiner codes, the resolution of base stations in different cells is much less attractive. Specifically, whilst it would be possible to continue to expand the Steiner method with ever increasing numbers of built in channels M (e.g. perhaps twice or three times the number needed for one base station), estimating more channels needs longer training sequences and synchronisation of the relevant base stations. Increasing training sequence length, however, is not the main difficulty; a bigger problem is that this Steiner solution would effectively constrain all the bases to use one and the same fundamental PN sequence and this would not allow addressed units to discriminate between bases by different codes when they are searching for hand-off possibilities. Steiner is also inflexible since there is contention over the order in which the bases should cycle their training sequences. This contention will appear at all six interfaces of the base's cell with other cells in a hexagonal layout and so sequence cycling must be set up to be compatible with all adjacent sites that could be affected.

[0017] As will now be appreciated, communication systems demand the resolution of multiple channels that combine to provide a composite channel impulse response C from observed training sequences S transmitted by several base stations each with multiple antenna elements. In this regard, a time domain channel estimation {circumflex over (n)}₁(t) for pilot sequence s₁(t) convolved through channel h(t) that is subject to noise n(t) may be obtained through a time-reversed correlation of the received sequence with a matched filter having the form s₁* (−t). In the frequency domain, the channel estimation takes the form Ĥ₁(ωk).

[0018] For the purposes of channel estimation, matched filtering of the PN sequence in the receiver can be performed through fast Fourier Transform (FFT) techniques. If the received data block of N samples is {y₁, y₂, . . . y_(N)} (which could be a sequence like {S ₁, S ₂. . . S _(M)}), then FFT operation yields: $\left\{ {s_{0},{s_{1}\quad \ldots \quad s_{N - 1}}} \right\} \overset{FFT}{\Rightarrow}S$ $\left\{ {y_{0},{y_{1}\quad {\ldots y}_{N - 1}}} \right\} \overset{FFT}{\Rightarrow}Y$

[0019] In other words, matched filtering operation in the time domain is equivalent to a point-by-point multiplication in the discrete Fourier domain, namely:

Ĥ _(k) ^((MF)) =Y _(k) ·S _(k) * k=0 . . . 2^(n)−1

[0020] ${\hat{H}}_{k}^{({MF})}\overset{IDFT}{\Rightarrow}\left\{ {{\hat{h}}_{0}^{({MF})},{{\hat{h}}_{1}^{({MF})}\quad \ldots \quad {\hat{h}}_{N - 1}^{({MF})}}} \right\}$

[0021] with two different channel estimates contained in the semi-sequences of {h}, namely:

{ĥ} ₁ ={ĥ ₀ , ĥ ₁ . . . ĥ _(N/2−1)}

{ĥ} ₂ ={ĥ _(N/2) . . . ĥ _(N−1)}

[0022] Of course, once in the frequency domain, sidelobes present in the frequency spectrum in a channel estimation circuit containing a matched filter may be minimised through the use of a Wiener (least squares) filter technique.

[0023] The Wiener least squares filter provides an equalisation technique that utilises a modified inverse filter that controls the white noise response of the filter, i.e. the undesired enhancement of thermal noise from the antenna. The paper “Smart Antennas for Third Generation Mobile Radio Systems” by Martin Haardt (Siemens), Stanford Colloquium on Smart Antennas”, July 1999, describes channel equalisation in terms of the Wiener filtering response, and explores how two or more receiving antennas can be included in the description of the received data. A further paper by H Sari et al titled “Transmission Techniques for Digital TV Broadcasting”, IEEE communications magazine 33(2) February 1995, discusses channel equalisation in the context of the Wiener filter mechanism. Space-time transmit diversity (STTD) is included in the standards for 3G cellular systems in the European UMTS Terrestrial Radio Access (UTRA) system and similar systems in the American CDMA2000 proposals. Consequently, it is important for these STTD systems to implement efficiently data recovery and equalisation algorithms. Utilisation of the Wiener filter in a communication system environment is further discussed in the Applicant's co-pending European Patent application 01300520.2 (Applicant's reference 118721D-Hudson) having both a priority claim to U.S. patent application Ser. No. 09/488,721 and corresponding to the continuation-in-part application (Applicant's reference 11872IDUS041-Hudson) filed in respect thereof, all incorporated herein by reference. Equalisers and channel whiteners are generally not well conditioned, especially if the channel has zeros or deep minima in its frequency response. The stable minimum mean square error (MMSE) Wiener filter solution for the channel is therefore: ${\hat{H}}_{k}^{(W)} = \frac{Y_{k} \cdot S_{k}^{*}}{{S_{k}}^{2} + \sigma^{2}}$ ${\hat{H}}_{k}^{(W)}\overset{IDFT}{\Rightarrow}\left\{ {{\hat{h}}_{0}^{(W)}\quad \ldots \quad {\hat{\quad h}}_{N - 1}^{(W)}} \right\}$

[0024] where σ² is the variance of the thermal noise level in the frequency domain. If the DFT is orthogonal, i.e. a unitary matrix operation, then this σ² value is the same as the time domain noise variance per sample, but most FFT algorithms apply some form of scaling for which allowance must be made.

[0025] Use of the Wiener filter solution results in residual errors caused mainly mainly by thermal noise in the sidelobes (and not error due to imperfections in the code sequence); this can be contrasted with PN sequence autocorrelation sidelobes experienced in a matched filter environment.

[0026] The paper by J. Blantz et al on the “Performance of a cellular hybrid C/TDMA mobile radio system applying joint detection and coherent receiver antenna diversity”, IEEE J. Selected Areas in Comms. 12(4), May 1994, pp.568-579, describes a multi-user detection algorithm. A second paper by A. Klein et al on “Zero forcing and minimum mean square error equalisation for multiuser detection in code-division multiple access channels”, IEEE Trans. Veh. Tech. 45(2), May 1996, pp.276-287, provides further context to the present invention.

[0027] In overview, therefore, PN training sequences sent from multiple base stations (or Node Bs) employing one or more transmit elements are subject to multipath that results in code cross-correlation and an inability at a receiver to resolve the individual channels and establish the individual channel-specific impulse responses. More specifically, whilst time alignment of base station transmissions may produce a summation of signals at the receiver (when employing appropriate windowing on a chip-by-chip basis with respect to identifiable correlation spikes), the receiver is only able to detect a composite channel impulse response that is unlikely to reflect accurately any of the actual transmission paths. Moreover, whilst the composite channel impulse response may be sufficient in the context of soft handover (in IS-95, for example), the composite channel impulse response is generally insufficient in third generation systems, including systems offering space-time coding. Furthermore, there is a reticence shown by service providers to provide synchronicity between base station transmissions since synchronised transmissions increase infrastructure costs, such as through the necessary provision of an accurate timing reference.

SUMMARY OF THE INVENTION

[0028] According to a first aspect of the invention there is provided a method of determining channel impulse responses of a plurality of channels to a communication device, the method comprising: performing transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; performing point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and concatenating the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel.

[0029] It is preferred to use a set of matrix operations in the frequency domain to resolve channels to the communication device from multiple transmitting stations, the matrix operations providing solvable linear equations for the channel impulse response H and the signal sequence S expressible in a matrix-vector form at each frequency bin.

[0030] A minimum mean square error (MMSE) estimation technique is preferable to solve the linear equations, although other mathematical techniques are possible (as will be appreciated).

[0031] The MMSE estimation technique preferably employs a Weiner filtering operation providing:

Ĥ=( S ^(H) S=Cov(B))⁻¹ S ^(H) Y

[0032] where: Cov(B) is a covariance matrix of thermal noise; S^(H)Y is a matched filter operation arranged to minimize the signal to noise ratio but not to remove mutual interference between channel estimates; and (S^(H)S+Cov(B))⁻¹ is a decoupling matric that removes the coupling between different channels caused by any non-ideal nature of the training sequences.

[0033] In a preferred embodiment, the number of bursts sent to the communication device from each transmitting unit in communication contact therewith is calculated as a multiplication of: a number of transmitting elements in a transmit array of a transmitting unit; and a number of transmitting units in communication contact with the communication device.

[0034] In a second aspect of the present invention there is provided a method of determining channel impulse responses of channels incident to a communication device, the method comprising: and transmitting multiple quasi-orthogonal pseudo-noise sequences as bursts from multiple base stations each having at least one transmit element, successive bursts providing an extended training sequence for use in channel estimation at the communication device; applying a Wiener frequency domain MMSE deconvolution with frequency domain spatial decoupling matrices to generate channel impulse response estimates for the channels.

[0035] In another aspect of the present invention there is provided a method of determining channel impulse responses of a plurality of channels established between a plurality of transmitting elements and a communication device in a communication system, the method comprising: substantially simultaneously transmitting different training bursts from, each of the plurality of transmitting elements, each burst having a length at least as long as a maximum channel duration in the communication system multiplied by a number corresponding to the plurality of transmitting elements; recovering at the communication device a signal sequence y_(n) from the different training bursts s_(n); and resolving the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.

[0036] A further aspect of the present invention provides a computer program product for a processor within a receiver device, the computer program product comprising: code that performs transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) received by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; code that performs point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and code that concatenates the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel; wherein the codes reside in a computer readable medium.

[0037] According to another aspect of the present invention there is provided a communication device having a receiver coupled, in use, to receive a plurality of channels supporting a signal sequence y_(n) and training sequence bursts, the communication device having: a signal processing platform to perform transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) received by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; the signal processing platform arranged to perform point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and the signal processing platform further arranged to concatenate the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel.

[0038] Yet another aspect of the present invention provides a communication receiver comprising: means for receiving, in use, multiple quasi-orthogonal pseudo-noise sequences as bursts from multiple base stations each having at least one transmit element, successive bursts providing an extended training sequence for use in channel estimation at the communication receiver; and means for applying a Wiener frequency domain MMSE deconvolution with frequency domain spatial decoupling matrices to generate channel impulse response estimates for the channels.

[0039] In one aspect of the present invention there is provided a communication device operational to receive a plurality of training sequences on a plurality of channels and a signal sequence y_(n), the communication device comprising: a receiver for substantially simultaneously receiving, in use, different training bursts from each of the plurality of channels emanating from a plurality of transmit elements, each burst having a length at least as long as a maximum channel duration multiplied by a number corresponding to the plurality of transmit elements; recovery circuitry for recovering, in use, the signal sequence y_(n) and the different training bursts s_(n); and a processor arranged to resolve the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.

[0040] According to the present invention, a base station of a communication system may be provided in which base station a transmitter chain is arranged to transmit multiple quasi-orthogonal pseudo-noise sequences as training bursts s_(n) from at least one transmit element and further arranged to transmit a signal sequence y_(n), successive training bursts providing an extended training sequence for use in channel estimation at a communication device of the communication system, the transmitter chain substantially simultaneously transmitting, in use, different training bursts from each of the at least one transmit element, each training burst having a length at least as long as a maximum channel duration in the communication system multiplied by a number corresponding to a plurality of channels to the communication device, the extended training sequence and the signal sequence y_(n) providing a resolution mechanism to the communication device allowing the communication device to resolving the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.

[0041] Advantageously, the present invention provides a mechanism for resolving a composite channel into a plurality of sub-channels with which specific individual channel impulse responses can be associated with and calculated using a numerically efficient fast transform technique. In other words, irrespective of whether or not there are synchronized base station transmission to an addressed unit from multiple base stations having one or more radiating element, individual channels can be resolved to generate channel impulse responses to aid in data recovery. Beneficially, the present invention is particularly applicable in the estimation of the channel impulse responses between multi-element base stations (in different cells) and the receive antenna array of a subscriber unit located at a 2-way or 3-way handoff point where interference is generally very high.

[0042] It can be shown that for a dispersive channel having two transmitting base stations, the present invention provides increased accuracy in channel estimation, with smaller errors experienced than in an uncoupled case. Indeed, tests have shown that normalised mobile station errors in channel estimation for the present invention can achieve results of 14.8 decibels (compared with 6.1 dB and 7.1 dB for techniques solely employing a matched filter and Weiner filter, respectively, in channel impulse response estimation). The present invention, even in conditions of varying base station transmit power, provides an improved accuracy in channel impulse response estimation, which accuracy is reflected in a general measured improvement of about 7 dB over a range of transmit signal strengths of ±20 dB for second base station (relative to a carrier signal from a first base station being set at +3 dB above thermal noise at the clip level). The present invention is therefore able to operate in interference and soft handover environments where interference becomes a problem.

[0043] A solution for estimating several downlink channels from different base antennas to a single terminal antenna by the use of multiple training bursts has been described. The method involves the use of N×N decoupling matrices in the Fourier domain to solve for N channels and gives superior results compared with attempts to use matched filters designed for added white Gaussian noise (AWGN) channels. Interference cancellation, space-time coding, and coherent soft hand-off can be enhanced by the use of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0044] At least one exemplary embodiment of the present invention will now be described with reference to the following drawings, in which:

[0045]FIG. 1 is a schematic block diagram of a basic transmitter and receiver architecture 10 in which processing circuitry may be adapted to support the underlying principles of the present invention;

[0046]FIG. 2 is a diagrammatic illustration of a typical cellular communication system;

[0047]FIG. 3 shows a mechanism and schematic block diagram for channel impulse response estimation that may be adapted to support the principles of the preferred embodiments of the present invention;

[0048]FIG. 4 is a transmission regime for a training sequence according to a preferred embodiment of the present invention;

[0049]FIG. 5 a schematic block diagram of the channel estimation process and architecture according to a preferred embodiment of the present invention; and

[0050]FIG. 6 is a Steiner code variant of FIG. 4.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT

[0051] Before discussing the preferred embodiment of the present invention, it should be noted that consideration has been given to employing Steiner codes in combination with Wiener MMSE estimation in the Fourier domain to obtain a low cost multi-user channel estimation method that is highly efficient for simultaneously estimating a number of channels on the downlink for CDMA systems. Steiner codes may also be used in OFDM systems though, in this case, it may be preferred to use the intrinsic OFDM symbol for training sequences. Given only prior knowledge of the maximum extent of the channel impulse response, the same basic pilot sequence can be time shifted and re-used (with properly determined cyclic headers) to function for a number of different downlink channels, and only one FFT correlation process is needed to solve for all the channels simultaneously. The technique is ideal for wideband fat pipe systems where the same user signal is radiated from different antennas of a transmit diversity antenna or a space-time coded antenna system. Channel estimation by this method is accurate enough to allow adequate interference cancellation of intercell interference, which is usually quite difficult to achieve in CDMA systems due to low grade estimates of the interference parameters.

[0052] Referring now to FIG. 1, there is shown a basic transmitter and receiver architecture 10 in which processing logic or circuitry may be adapted to support the underlying principles of the present invention. Transmit and receive chains 100, 101 may be combined in a transceiver arrangement of a station, such as a base station/Node B or a mobile device of a cellular radio system or the like. Individual transmit and receive chains could, of course, be implemented in isolation, whereby unidirectional (as opposed to bi-directional) communication is supported across, for example, an air-interface, such as a CDMA or 3G radio environment (although the present invention is more widely applicable to multi-point transmission systems).

[0053] For the sake of explanation only, the following description of the preferred embodiment will be based on a wideband CDMA system and so references to “CDMA” should be construed broadly and without specific limitation.

[0054] In transmit chain 100, signal source 102 generates signals 104 which are encoded by encoder 106, such as a half rate turbo coder. Encoded signals 107 are modulated and subjected to CDMA spreading by modulator/spreader 108 and then filtered by pulse shaper digital filter 110. Following filtering, a digital to analog (D/A) converter is arranged to produce analog signals 114 which are generally filtered in a second filter 116 to limit any aliasing effect at transmission. A mixer 118 up-converts baseband signals 120 to transmission frequencies prior to amplification in power amplifier 122 and transmission from antenna 124. Of course, as will be appreciated, some of the functional blocks in the transmit chain can be realised as discrete or collocated into a single chip or processing block.

[0055] Transmitted signals 126 are received by receive antenna 128 of an addressed station. Received signals 130 are communicated to a down-converting mixer 132 via an amplifier 134, which down-converting mixer typically produces an intermediate frequency signal for initial signal processing. A filter 134 isolates a desired frequency spectrum 136 for signal processing, which frequency spectrum is converted to a digital domain representation 137 by analog to digital (A-D) converter 138. The digital domain representation 137 is digitally filtered in digital channel pulse shaper filter 140 and then applied in series to a combined demodulator/equaliser slicer and RAKE despreader 142 and then a channel decoder 144. Recovered information 145 is ultimately received by terminal receiving equipment (TRE) 146. It will be understood that channel filtering generally distorts the channel impulse response and the channel filter becomes part of the unknown channel.

[0056] The transmit and receive chains 100, 101 are invariably micro-processor (μP) controlled operations. By way of illustration, a controller 150 and associated memory 152 (which may be a combination of random access (RAM) and read only (ROM)) is shown as being common to both the transmit and receive chains 100, 101. The memory 152 stores control algorithms, such as equalisation and modulation algorithms, and also operands and incident data is subject to signal processing requirements. Moreover, common circuitry between the transmit and receive chains can be shared to reduce component count, subject to the inclusion of suitable switching and regulating circuitry. Additionally, as will be understood, at least some of the functions within one or both of the transmit and receive chains 100, 101 can be implemented either entirely or partially as code, e.g. equalisation and demodulation. It is these code blocks, application specific integrated circuits or memory modules that can be adapted or up-graded to support the present invention.

[0057] Wideband CDMA-specific components can be replaced or substituted to support an arbitrarily selected communication protocol, e.g. an FDD environment employing TDM techniques or a multicarrier environment.

[0058]FIG. 2 is a diagrammatic illustration of a typical cellular communication system 170 showing a subscriber unit 172 (preferably having multiple receive elements 174-180) at cell boundaries between three potentially serving base stations 182-186. For an equidistant displacement of the subscriber unit from the base stations, one could expect that transmit signal strengths to be roughly equal, subject to the respective paths and the associated physical environments. The general purpose of FIG. 2 is to illustrate a physical environment in which the present invention finds exemplary application. For purposes of clarity, the cellular communication system 170 is shown with three cells 188-192 and a single subscriber unit 172, but clearly cellular systems may include many cells in multiple layers, with each cell servicing a multiplicity of subscriber units. At the hand-off point midway between two or three base stations, it is necessary to distinguish the channel impulse responses for a doubled or tripled number of channels from multiple base antenna elements. If the CIRs are not estimated jointly, the carrier to interference (C:I) ratio is very low within the training sequences and the channel estimates will be correspondingly poor. Given that each base station always has several TX element channels to estimate it is reasonable to use the Steiner method in the intracell mode, allocating one PN sequence per base station with cyclic rotation to distinguish between the bases' antenna elements, as described previously.

[0059] Incoming signals 126 to the subscriber unit 172 are received from the antenna 128 at a transmission rate of ^(I)/T_(ch) of the system. By way of practical implementation, an entire slot of a frame is sampled (A/D converted) at the Nyquist rate and read into memory 152 (of FIG. 1) prior to commencement of information recovery. The incoming signals 126 can be received from any digital source of signals and are not restricted to wireless communications, with the base stations utilising single or multiple radiating elements in each transmit antenna array. Signal processing of incoming signals 126 for optimised data recovery is clearly subject to knowledge of the channel impulse response (i.e. the “channel spectrum”), with this determined from training sequences sent from the base stations according to a predetermined regime, e.g. once per slot, once per frame or on any other appropriate basis. An exemplary mechanism for data recovery is described in the aforementioned European and U.S. patent applications (e.g. EP 01300520.2).

[0060] As regards the channel spectrum, reference is made to FIG. 3 that shows a mechanism for channel impulse response estimation that is adapted to support the principles of the preferred embodiment of the present invention. A training sequence 250, preferably located in and extractable from each slot of a frame, falls incident on receive antenna 128, which training sequence is demodulated in the receive chain (as will be readily appreciated) to recover the random sequence y_(k), e.g. a generated pseudo-random number sequence. The form and structure of the training sequence will be described in detail later, since the structure is inexorably associated with an ability to resolve individual channels for channel impulse response estimation according to the present invention.

[0061] In overview and without initially discussing the preferred embodiment, the recovered random sequence y_(k) is subjected to a DFT function 252 to produce a channel sequence spectrum y_(k) 254. Within the memory 152 associated with the receive chain there is stored a replica of the original training sequence s_(k) 260, which original training sequence s_(k) 260 has a corresponding known sequence spectrum s_(k) 262 obtained by subjecting the original training sequence s_(k) 260 to an FFT function. The known sequence spectrum s_(k) 262 may simply be stored in the memory since it is this sequence spectrum s_(k) 262 that is used to assess the channel impulse response.

[0062] The DFT function 252 may be performed by a specific digital signal processor (DSP) or the processor 150 of FIG. 1. The channel spectrum therefore assumes the form of an x-point, e.g. 512-point, DFT sample stored temporarily in, for example, RAM.

[0063] It will be noted that the frequency domain sequence spectrum s_(k) 262 is essentially flat with slight perturbations about a nominally constant magnitude.

[0064] The sequence spectrum s_(k) 262 is compared with the channel sequence spectrum y_(k) 254 in a cross-correlation function 266, such as realised by Wiener filter frequency response, namely ${W_{k} = \frac{H_{k}^{*}}{{H_{k}}^{2} + \sigma^{2}}},$

[0065] to produce an impulse response spectrum H_(k) 268 that can be stored in memory for the duration of at least the related slot and longer if desired. Clearly, by storing the impulse response spectrum H_(k) 268 for an extended period, processing overhead is reduced at the expense of accuracy in any correction of the variations in the channel due to Doppler. As will be understood, time alignment of the received and transmitted training sequences is required prior to cross-correlation.

[0066] Optionally, the impulse response spectrum H_(k) 268 may be further refined and so it is subjected to an IFFT function 270 to generate an estimated time domain representation h_(k) thereof having an arbitrary number of taps/channels that can be used as a matched filter, if desired. In other words, each tap is representative of a weight for the channel impulse response. Within the time domain, trimming of the number of taps reduces the channel impulse response to manageable processing levels, with the reduction reflecting the greatest expected channel impulse response (CIR) duration (presently understood to be seventy-one chips in length in 3GPP, although this number is an arbitrarily selected cut-off). From the reduced number of taps in the channel impulse response, most values will approximate to zero and so a control processor 272, based on a level or number threshold, selects only those N significant taps that most noticeably reflect the channel to produce a best estimate channel impulse response h′_(k) 274. Selection of the N most significant taps may simply force lesser taps to be forced to zero. By limiting the channel impulse response to the most significant taps, processing is reduced and a final error in the channel limited. In the latter respect, it will be understood that all tap values will have an associated error from thermal noise, channel interference and other adverse channel and processing artefacts, so the compounding of errors is mitigated.

[0067] A complete understanding of the principles of the present invention will now be gleaned from the following description of specific signal processing interactions and transmission techniques.

[0068] Concerning transmission of a training sequence according to a preferred embodiment of the present invention, reference is made to FIG. 4. For the sake of explanation, the structuring of base station transmissions (in the timing frame of FIG. 4) is assumed to reflect a three site system in which each of three base stations includes a single transmit element. Of course, the basic principle employed in the specific embodiment of FIG. 4 can be developed for multi-element transmit arrays from two or more base stations. Essentially, FIG. 4 is representative of successive training sequence transmission bursts from each of three base stations (Base TX1, Base TX2 and Base TX3). In generality, the number of training sequences transmitted from all transmit elements follow a squared law, i.e. for three base stations each having single radiating elements then there would be three successive bursts (t₁-t₃) separated, preferably, by guard periods (g₁ and g₂) or cyclic prefixes. Bursts from the various base stations are preferably time aligned at transmission, although a windowing function at the receiver (that steps through a chip-wise time correlation) may be employed to time align the transmitted sequences snk. Since channel delay is generally no greater than about 20 μs, then the receiver need only step through a chip count commensurate with the maximum channel delay. For example, at an operating frequency (chipping rate) of one megahertz (1 MHz), 20 μs correspond to twenty chips.

[0069] During each burst (t₁-t₃), each base station transmits a finite (predetermined) length of training sequence s, which training sequence may vary from 1-chip or more. Typically, each burst will be tens of chips in length and preferably at least about sixty chips in length and most preferably in excess of about one hundred chips. Clearly, the length of the training sequence is restricted to manageable levels to avoid inefficient use of communication resource for more important data transmissions. The nomenclature adopted in FIG. 4 with respect to the bursts follows the convention that the first subscript (n) represents an identity of the transmitting base station whereas the second subscript (k) represents the sequence number. In the context of Base TX1, FIG. 4 is illustrative of three sequences s₁₁, S₁₂ and S₁₃ during bursts t₁, t₂ and t₃, respectively. A channel sequence spectrum y_(k) is formed (for each burst (t₁-t₃)) from the summation of the individual sequences s₁₁, S₂₁, S₃₁ from the base stations transmitting in that burst.

[0070] For channel estimation, it will be appreciated that the number of samples required is dependent upon bandwidth, e.g. with a symbol rate of 284 kbps (kilo bits per second), GSM systems require about five samples of the channel.

[0071] It is well known that DFT's have a wrap-round effect that is equivalent to the data being cyclic. Consequently, in (contiguous) observation windows each encoded with the same PN sequence, DFT's can be used to perform a discrete convolution operation. Circulant matrices are equivalent to these DFT operations, which circulant matrices can be defined as follows. In a system in which the training sequence is S={s₀, s₂, s₂, s₃, s₄}, the cyclic extension is the channel impulse response is H={h₀, h₁, h₂, h₃, h₄} and the observation window arranged to hold data Y={y₀, y₁, y₂, y₃, y₄}, then Y is the cyclic convolution of S with H: $y_{k} = {\sum\limits_{n = 0}^{N}\quad {s_{k}h_{k - {n\quad {MOD}\quad N}}}}$

[0072] with N=4. If the associated DFT's are the sequence spectrum S_(k), the channel impulse response H and the channel sequence spectrum Y_(k) is then:

Y _(k) =S _(k) {circle over (x)}H _(k)

[0073] where {circle over (x)} is a point-by point-product.

[0074] In developing a solution to the problem of channel estimation in the presence of interference or multi-user channel estimation (in either non-dispersive or highly dispersive channels), the inventor has appreciated that the fundamental problems associated with channel isolation/resolution can be expressed algebraically in similar terms to multi-user detection algorithms, as referenced above by J. Blantz et al and A. Klein et al.

[0075] In the Steiner code method described above, to estimate M channels the length of the PN code must be at least M times the maximum channel dispersion. In an N base station situation, each base station with M elements, while the Steiner method can continue to be used, the PN code length must be at least MN times the channel impulse response duration and each element of each base station would transmit an end-around rotated version of the code with a different unique offset. In the multiple base station situation, the differing round-trip propagation times to the subscriber unit must also be taken into account in the channel model so codes becomes increasingly extended. A more flexible option for allowing expansion of the number of serving base stations is to use an alternating sequence of different Steiner codes, each of which on its own is only just long enough for the number of elements in a single base station to be resolved.

[0076] To appreciate the present invention, it is preferable to consider a communication system having N active/serving base stations for a call, with each base station having a single transmitting element. If the N base stations each with a single element are received by a single element antenna of a subscriber unit, such as cellphone or terminal, then if the N bases simultaneously send N strings of N different pseudorandom bursts and such that there are N² different sequences altogether, then the individual channel impulse responses can be resolved at the terminal. In practice, the present invention is particularly interested in a three-base station situation which, statistically, occurs most frequently.

[0077] The base stations are preferably synchronised to a time accuracy much less than the duration of any cyclic prefix (which is typically of the order of about 10 μs to 20 μs for urban microwave propagation). The m^(th) received burst is now the convolution:

[0078] ${y_{t}^{(m)} = {{{\sum\limits_{k = 0}^{K}\quad {\sum\limits_{n = 1}^{N}\quad {s_{n,{t - k}}^{(m)}h_{n,k}}}} + {b_{t}^{(m)}\quad t}} = 1}},\quad {\ldots \quad T},{m = {1\quad \ldots \quad M}}$

 t=1, . . . , T,m=1. . . M

[0079] where b is the thermal noise component and K is the maximum dispersion in chips. After transformation into the DFT (frequency) domain, the equivalent, numerically efficient function can be expressed in the point-by-point product form: $Y^{(m)} = {{\sum\limits_{n = 1}^{N}\quad {S_{n}^{(m)} \otimes H_{n}}} + B^{(m)}}$ where $\left\{ {y_{0\quad}^{m}\quad \ldots \quad y_{T}^{m}} \right\} \overset{DFT}{\Leftrightarrow}Y_{m}$ $\left\{ {s_{{n,0}\quad}^{m}\ldots \quad s_{n,T}^{m}} \right\} \overset{DFT}{\Leftrightarrow}S_{m,n}$ $\left\{ {h_{n,0}\quad \ldots \quad h_{n,{K - 1}}} \right\} \overset{DFT}{\Leftrightarrow}H_{n}$

[0080] Thus, rather than performing a convolution of the channel impulse response h_(n) with the m^(th) sequence s_(mn) from the n^(th) base transmitter element, the present invention applies a DFT operation to both the received sequence y_(n) and the various local replicas of the training sequences S_(mn), and then does a multiplication together of the corresponding frequency bins of the received signal sequence Y_(n) (being the signal sequence s_(n) as received through a channel) with the corresponding frequency bins of the replica of the training sequence S_(mn). Summation (i.e. concatenation) of the individual multiplication products associated with each channel provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel. The process of the present invention generally involves periodic buffering, for example, of frequency bin data and vector results pertaining to channel impulse responses, as will be appreciated by the skilled addressee.

[0081] In other words, taking an exemplary 128-point Fourier transform of both the received sequence y with the training sequence s yields one hundred and twenty-eight corresponding frequency bins in the frequency domain. Multiplication together of corresponding frequency bins of the received sequence with the same frequency bin of the signal (training) sequence s generates a matrix containing solvable linear equations in H and S. Summation (i.e. concatenation) of the individual multiplication products associated with each channel then provides a composite frequency response for that channel, which composite frequency response can be used in the time domain (through an inverse FFT) to provide a channel impulse response.

[0082] It will be appreciated that the channel is assumed constant for the duration of the burst events with respect to slow moving subscriber units, e.g. mobile units having a velocity of less than about ten kilometres per hour (10 kph).

[0083] In the DFT domain, the k^(th) frequency bin received for the first burst can be expressed as the sum of components from the base stations and their channels:

Y ₁ ^((k)) =S ₁₁ ^((k)) +S ₁₂ ^((k)) H ₂ ^((k)) +S ₁₃ ^((k)) H ₃ ^((k)) +B ₁ ^((k))

[0084] Similarly, the k^(th) frequency bin for the second burst can be expressed as:

Y ₂ ⁽²⁾ =S ₂₁ ^((k)) H ₁ ^((k)) +S ₂₂ ^((k)) H ₂ ^((k)) +S ₂₃ ^((k)) H ₃ ^((k)) +B ₂ ^((k))

[0085] And, finally, the kth frequency bin for the third burst is:

Y ₃ ^((k)) =S ₃₁ ^((k)) H ₁ ^((k)) +S ₃₂ ^((k)) H ₂ ^((k)) +S ₃₃ ^((k)) H ₃ ^((k)) +B ₃ ^((k))

[0086] Rearranging the k_(th) frequency bins provides a set of solvable linear equations in terms of H and S, namely: $\begin{pmatrix} Y_{1}^{(k)} \\ Y_{2}^{(k)} \\ Y_{3}^{(k)} \end{pmatrix} = {{\begin{bmatrix} S_{11}^{(k)} & S_{12}^{(k)} & S_{13}^{(k)} \\ S_{21}^{(k)} & S_{22}^{(k)} & S_{23}^{(k)} \\ S_{31}^{(k)} & S_{32}^{(k)} & S_{33}^{(k)} \end{bmatrix}\begin{pmatrix} H_{1}^{(k)} \\ H_{2}^{(k)} \\ H_{3}^{(k)} \end{pmatrix}} + \begin{pmatrix} B_{1}^{(k)} \\ B_{2}^{(k)} \\ B_{3}^{(k)} \end{pmatrix}}$

[0087] which can be written in the matrix vector form at each frequency k bin (which for clarity is omitted):

Y=SH+B

[0088] It is now possible to define matrices and vectors containing all the transmitter elements and bursts: $S = {{\begin{pmatrix} S_{1}^{(1)} & S_{2}^{(1)} & S_{3}^{(1)} \\ S_{1}^{(2)} & S_{2}^{(2)} & S_{3}^{(2)} \\ S_{1}^{(3)} & S_{2}^{(3)} & S_{3}^{(3)} \end{pmatrix}H} = {{\begin{pmatrix} H_{1} \\ H_{2} \\ H_{3} \end{pmatrix}Y} = {{\begin{pmatrix} Y^{(1)} \\ Y^{(2)} \\ Y^{(3)} \end{pmatrix}B} = \begin{pmatrix} B^{(1)} \\ B^{(2)} \\ B^{(3)} \end{pmatrix}}}}$

[0089] These equations are solved using a minimum mean square error (MMSE), e.g. Weiner filter, method providing:

Ĥ=(S ^(H) S+Cov(B))⁻¹ S ^(H) Y

[0090] Here Cov(B) is the covariance matrix of the thermal noise, which is often approximated by an identity matrix σ²I. The equation immediately above can be considered as two entities, namely as a matched filter SHY arranged to minimize the signal to noise ratio but not to remove mutual interference between channel estimates, followed a decoupling matric (S^(H)S+Cov(B))⁻¹ that removes the coupling between different channels caused by the non-ideal nature of the PN sequences. The inverse DFTs for each radio channel are therefore of the form: ${\begin{pmatrix} H_{1}^{(0)} \\ H_{1}^{(1)} \\ H_{1}^{(2)} \\ \vdots \\ H_{1}^{(z)} \end{pmatrix}\overset{iDFT}{\Rightarrow}\begin{pmatrix} h_{1}^{(0)} \\ h_{1}^{(1)} \\ h_{1}^{(2)} \\ \vdots \\ h_{1}^{(z)} \end{pmatrix}},{\begin{pmatrix} H_{2}^{(0)} \\ H_{2}^{(1)} \\ H_{2}^{(2)} \\ \vdots \\ H_{2}^{(z)} \end{pmatrix}\overset{iDFT}{\Rightarrow}\begin{pmatrix} h_{2}^{(0)} \\ h_{2}^{(1)} \\ h_{2}^{(2)} \\ \vdots \\ h_{2}^{(z)} \end{pmatrix}},$

[0091] where z is the frequency bin (or its time domain equivalent).

[0092] The decoupling matrix term S^(H)S is a matrix product, where S^(H) is the conjugate transpose of the sequence, i.e. the transposed matrix with all elements complex conjugated. The covariance matrix <BB^(H)>is the time averaged outer product of the noise vector, or in element-by-element terms: $\text{<}{BB}^{H}\text{>} = \begin{pmatrix} {\text{<}b_{1}b_{1}^{*}\text{>}} & {\text{<}b_{1}b_{2}^{*}\text{>}} & {\text{<}b_{1}b_{3}^{*}\text{>}} & \cdots \\ {\text{<}b_{2}b_{1}^{*}\text{>}} & {\text{<}b_{2}b_{2}^{*}\text{>}} & \cdots & \cdots \\ {\text{<}b_{3}b_{1}^{*}\text{>}} & {\text{<}b_{3}b_{2}^{*}\text{>}} & \cdots & \cdots \\ \cdots & \cdots & \cdots & \cdots \end{pmatrix}$

[0093] In terms of each channel concatenation of the numerous frequency bins allows generation of a time domain vectors of the channel impulse response for a channel, the time domain vectors generated from an inverse DFT process within a suitable processing block, such as an ASIC or control processor 150 (of FIG.

[0094] It is now possible to extend the basic concept of multiple channel estimation to a situation in which each base station has a plurality of transmit element; this scenario arises in, for example, systems employing space time coding (STC). It will be appreciated that STC is a collection of techniques for transmitting a number of parallel data streams from multiple transmit antennas with the aim of increasing bit rate for a given total transmitter power. In STC, it will be appreciated that the 2×2 frame structure is expanded to an N-element array, usually having at least four transmit elements. For example, in a four element STC transmitting antenna we might organise the user data in blocks of four symbols and transmit them in different order from the four elements via 16 channels to 4 receiving elements. This is a natural extension of the two element STTD procedure, the main difference from STTD being that multiple receiving elements are essential to get a bandwidth expansion in STC whereas STTD is aimed purely at improving the reliability of the received data and is not concerned with bit rate expansion. Thus STTD will function with a single receive antenna, while STC requires a minimum of two. The principle difference between an STTD arrangement (that is discussed in detail below) and STC is that each component of the block vectors and block matrices (for STTD given below) contains an increasing number of elements (i.e. CIR samples, transmitted data samples and received data samples) consistent with the adopted coding method in each STC derivative.

[0095] Referring briefly to FIG. 5, which is generally complementary to FIGS. 1, 3 and 4, there is shown a schematic block diagram of the channel estimation process and architecture 500 of a preferred embodiment of the present invention, the process based on a two base station (BS1 and BS2) transmission environment having two training bursts. The training sequences s_(x)(ω) are, in this exemplary case, Gold codes, with individual first 502 and second 504 training sequences transmitted in a first burst 506. The first training sequence 502 is subjected to first channel 508, whereas the second training sequence is subjected to a second channel 510. Both channels are combined at the receiver 512 and are further subject to a first noise component (N₁(ω)) 513. In this exemplary case, first and second matched filters 514 and 516 provide a time reversed conjugated inversion of the respective first and second training sequences 502 and 504, with outputs from the first and second matched filters 514 and 516 provided to a frequency domain coupler 518 supporting the frequency domain decoupling matrix (S^(H)S+Conv(B))⁻¹. Third 520 and fourth 522 training sequences transmitted in a second burst 524 are respectively subjected to first channel 508 and second channel 510. Both channels are combined at the receiver 512 and are further subject to a second noise component 526 (typically different to the first noise component). In this exemplary case, third 528 and fourth 530 matched filters provide a time reversed conjugated inversion of the respective third and fourth training sequences 520 and 522, with outputs from the third and fourth matched filters 528 and 530 provided to the frequency domain coupler 518. The frequency domain coupler then provides channel impulse response vectors {circle over (H)}₁(ω) and {circle over (H)}₁(ω) (reference numerals 532 and 534) for the first and second channels, respectively, based on the foregoing point-by-point manipulation of individual (frequency domain) frequency bins.

[0096] The preferred embodiment of the present invention therefore shows how accurate channel estimation is possible through the use of Wiener frequency domain MMSE deconvolution combined with frequency domain spatial decoupling matrices, with quasi-orthogonal Gold codes allocated to base stations and their antenna elements.

[0097] The principles of the present invention can also be applied to resolve multiple channels by a single training burst; this has particular application in OFDM systems where it may not be possible to transmit Steiner codes because of hardware constraints. The present invention can be modified, in the fashion now shown, to operate with a single arbitrary training sequence yet still resolve multiple channels in a least squares sense. A single training burst situation is algebraically undetermined in the two channel case. If the burst is of length L, there are 2L unknowns in the two channels which cannot be determined from L observations at one antenna. However, if there are also ½ L linear constraints associated with each channel impulse response the equations become solvable again. The simplest constraints are that the channel impulse responses {h₀ . . . h_(k)} are of finite duration. If K<½ L then we write the equations as follows. Let S_(m) be the circulant matrices representing the training bursts and H_(m) be the IR vectors for channels #1 and #2. However, with a matrix solution not be circulant, the ability to use FFT to solve the following equation is lost, but resolution of the channels is still possible with use of a matrix of the form: $Y = {\begin{bmatrix} s_{10} & 0 & s_{20} & 0 \\ s_{11} & s_{10} & s_{21} & s_{20} \\ s_{12} & s_{11} & s_{22} & s_{21} \\ 0 & s_{12} & 0 & s_{22} \\ 0 & 0 & 0 & 0 \end{bmatrix}\begin{bmatrix} h_{10} \\ h_{11} \\ h_{20} \\ h_{21} \end{bmatrix}}$

[0098] In generality, with respect to two parallel channels using a single training burst, if there are a large number of linear constraints C attached to the channel impulse responses (such as finite durations) then a number of channels can be solved with a single training burst. Algebraically, if the there are N_(c) constraints on each channel vector of L elements and C channels, the sum of the number of independent degrees of freedom is C(L−N_(c)). If the length of the training sequence is NT>C(L−N_(c)), then all of the independent degrees of freedom can be solved; this method is used in Steiner codes to estimate multiple channels using a single training sequence

[0099] Whilst benefits are attained through use of the channel impulse response estimation scheme described so far (in which the number of processing blocks is equal to the total number of channels to avoid code contention problems), some processing efficiency (i.e. DSP load) associated with Steiner codes is lost since there is a requirement to invert a matrix in each frequency bin whose dimension is equal to the number of channels, i.e. the number of transmitting cells times the number of base antenna elements per cell.

[0100] In a further preferred embodiment of the present invention, therefore, the training sequence transmissions of FIG. 4 are implemented as Steiner cyclic training sequence variant; this is shown in FIG. 6 in which successive bursts 602 and 604 from different base stations BS1 and BS2 contain repeated sequence portions of an entire training sequence. This particular embodiment of the present invention offers an optimum combination of frequency domain Wiener filtering and MMSE spatial decoupling for the estimation process. The high accuracy of channel estimation that the combination of techniques offers is a desirable if not essential for coherent null steering and soft hand off in CDMA and OFDM. The sequences {s₁₁}, {s₂₁}, {s₁₂}, {s₂₂} are four linearly independent random sequences transmitted in pairs from the two antennas as shown. These sequences transform into the DFT domain as s₁₁, S₂₁, S₁₂, S₁₁. Similarly the channel impulse responses are H₁, H₂ in the DFT domain (for the two channels in the exemplary case of a two base station system having single transmit elements). The receiver (e.g. receiver chain samples the two received blocks and, via a DFT function, transforms to the Frequency domain as Y₁ and Y₂. The required guard intervals, which prevent dispersion contamination by unknown data, are already provided in the Steiner sequences and additional, i.e. separate, provisioning of guard periods is not therefore required. The two received blocks are superpositions of convolutions of the transmitted sequences with the channels and are modeled by point by point equations in the DFT domain as follows: ${\begin{bmatrix} Y_{k}^{1} \\ Y_{k}^{2} \end{bmatrix} = {{{\begin{bmatrix} S_{k}^{11} & S_{k}^{12} \\ S_{k}^{21} & S_{k}^{22} \end{bmatrix}\begin{bmatrix} H_{k}^{1} \\ H_{k}^{2} \end{bmatrix}} + {\begin{bmatrix} N_{k}^{1} \\ N_{k}^{1} \end{bmatrix}\quad k}} = {0\quad \ldots}}}\quad,{2^{n} - 1}$

 K=0 . . . , 2^(n)−1

[0101] Since the S matrix has no particular orthogonality properties, matched filtering is not advisable. Instead, if the following MMSE matrix operation is performed at each frequency; the result combines spatial decoupling with a Wiener frequency weighting function and overall gives an MMSE solution. It requires a 2×2 matrix inversion in each frequency bin for two cell operation (with each base station having a single transmit element): ${{\begin{bmatrix} {\hat{H}}_{k}^{1} \\ {\hat{H}}_{k}^{2} \end{bmatrix} = {{{\left( {\begin{bmatrix} S_{k}^{11} & S_{k}^{12} \\ S_{k}^{21} & S_{k}^{22} \end{bmatrix} + {\sigma^{2}I}} \right)^{- 1}\begin{bmatrix} Y_{k}^{1} \\ Y_{k}^{2} \end{bmatrix}}\quad k} = {0\quad \ldots}}}\quad,{2^{n} - 1}}\quad$

 K=0 . . . , 2^(n)−1

[0102] By combining Steiner cyclic pilot rotation for transmissions from the transmit elements of each base station according to the present invention, interference-free mobiles near a centre of the cell are allowed to resolve their channels in the usual (conventional) way. At the cell periphery where interference becomes significant, the training sequences need to be expanded to provide enough degrees of freedom such that the simultaneous equations for all of the channels become algebraically determinate; a repeating pattern of the Steiner PN sequences allows this to occur.

[0103] In the exemplary case where a receiver observes six sequences, as shown in FIG. 7, the result in the Fourier domain is that there are sufficient degrees of freedom to solve for six channels {h₁} to {h₆}. It should be note that, in FIG. 7, the introduction of sign reversals allows for distinction to be drawn between codes in successive bursts, with the mechanism of sign reversal therefore reducing the overall number of Steiner codes required to implement a system according to the present invention. The equations relating the received signal Y to the sequences U, V, Wand the channels H in the frequency domain are: $\begin{bmatrix} Y_{1}^{(k)} \\ Y_{2}^{(k)} \\ Y_{3}^{(k)} \\ Y_{4}^{(k)} \\ Y_{5}^{(k)} \\ Y_{6}^{(k)} \end{bmatrix} = {{{\begin{bmatrix} U_{1}^{(k)} & U_{2}^{(k)} & V_{1}^{(k)} & V_{2}^{(k)} & W_{1}^{(k)} & W_{2}^{(k)} \\ U_{2}^{(k)} & U_{1}^{(k)} & V_{2}^{(k)} & V_{1}^{(k)} & W_{2}^{(k)} & W_{1}^{(k)} \\ U_{1}^{(k)} & U_{2}^{(k)} & {- V_{1}^{(k)}} & {- V_{2}^{(k)}} & W_{1}^{(k)} & W_{2}^{(k)} \\ U_{1}^{(k)} & U_{2}^{(k)} & {- V_{2}^{(k)}} & {- V_{1}^{(k)}} & W_{2}^{(k)} & W_{1}^{(k)} \\ U_{1}^{(k)} & U_{2}^{(k)} & V_{1}^{(k)} & V_{2}^{(k)} & {- W_{1}^{(k)}} & {- W_{2}^{(k)}} \\ U_{1}^{(k)} & U_{2}^{(k)} & V_{2}^{(k)} & V_{1}^{(k)} & {- W_{2}^{(k)}} & {- W_{1}^{(k)}} \end{bmatrix}\begin{bmatrix} H_{1}^{(k)} \\ H_{2}^{(k)} \\ H_{3}^{(k)} \\ H_{4}^{(k)} \\ H_{5}^{(k)} \\ H_{6}^{(k)} \end{bmatrix}} + {\begin{bmatrix} N_{1}^{(k)} \\ N_{2}^{(k)} \\ N_{3}^{(k)} \\ N_{4}^{(k)} \\ N_{5}^{(k)} \\ N_{6}^{(k)} \end{bmatrix}\quad k}} = {{0\quad \ldots \quad 2^{n}} - 1}}$

 k=0 . . . 2^(n)−1

[0104] However this is an inefficient algebraically redundant representation that can be simplified as follows. At the mobile terminal, for example, the signal from a given antenna at a base station is the circular convolution of the PN sequence {s} with the channel impulse response {h}: $y_{k} = {{\sum\limits_{j = 0}^{N - 1}\quad {s_{k - {j\quad {MOD}\quad N}}h_{j\quad}\quad k}} = {{0\quad \ldots \quad 2^{n}} - 1}}$

 k=0 . . . 2^(n)1

[0105] The cyclic shift of the PN sequence for second base element in the Steiner method can be replaced by a reverse shift of the channel impulse response to give exactly the same signal at the subscriber unit: $\begin{matrix} {y_{k} = {\sum\limits_{j = 0}^{N - 1}\quad {s_{k - j - {{N/2}{MOD}\quad N}}h_{j}}}} \\ {= {\sum\limits_{j = 0}^{N - 1}\quad {s_{k - j}h_{j + {{N/2}\quad {MOD}\quad N}}}}} \end{matrix}$

[0106] Cyclic shifting of channel impulse responses h₂, h₄ and h₆ (of FIG. 7) takes into account the reverse shift as detailed immediately above with the effect that the six sequences received at the antenna of the subscriber (or other addressed unit) are Y ₁, Y ₂, Y ₃, Y ₄, −Y ₅and −Y ₆. Moreover, the six sequences are obtained from a repetition of only three Steiner codes that are individually and uniquely assigned to each base station, i.e. both transmit elements send identical sequences in the same burst, with the subscriber unit generating a cyclically shifted channel impulse response h _(x) for one of the two radiating elements of the base station's transmit array. This reverse shift manipulation results in only three different PN sequences being utilised in this particular embodiment, with the channel impulse responses of FIG. 7 taking the form (h ₁+h₂), (h ₃+h ₄) and (h ₅ +h ₆) to provide the received sequence Y ₁, Y ₂, Y ₃, Y ₄, Y−₅ and −Y ₆. The determinant of the sign change matrix of this solution is 4, as shown below: ${\begin{matrix} 1 & 1 & 1 \\ 1 & {- 1} & 1 \\ 1 & 1 & {- 1} \end{matrix}} = 4$ Writing $y_{1} = {{\begin{bmatrix} y_{1} \\ y_{2} \end{bmatrix}y_{2}} = {{\begin{bmatrix} y_{3} \\ y_{4} \end{bmatrix}y_{3}} = \begin{bmatrix} y_{5} \\ y_{6} \end{bmatrix}}}$ $h_{1} = {{\begin{bmatrix} h_{1} \\ h_{2} \end{bmatrix}h_{2}} = {{\begin{bmatrix} h_{3} \\ h_{4} \end{bmatrix}h_{3}} = \begin{bmatrix} h_{5} \\ h_{6} \end{bmatrix}}}$ $u_{1} = {{\begin{bmatrix} u_{1} \\ u_{2} \end{bmatrix}v_{1}} = {{\begin{bmatrix} v_{1} \\ v_{2} \end{bmatrix}w_{1}} = \begin{bmatrix} w_{1} \\ w_{2} \end{bmatrix}}}$

[0107] with Fourier transforms:

[0108] y₁→:Y₁ y₂→Y₂ Y₃→Y₃

[0109] h₁→H₁ h₂→H₂ h₃→H₃

[0110] u→U V→V w→W then a reduced set of more easily solvable equations in the DFT domain is obtained, namely: $\begin{bmatrix} Y_{1}^{(k)} \\ Y_{2}^{(k)} \\ Y_{3}^{(k)} \end{bmatrix} = {{{\begin{bmatrix} U^{(k)} & V^{(k)} & W^{(k)} \\ U^{(k)} & {- V^{(k)}} & W^{(k)} \\ U^{(k)} & V^{(k)} & {- W^{(k)}} \end{bmatrix}\begin{bmatrix} H_{1}^{(k)} \\ H_{2}^{(k)} \\ H_{3}^{(k)} \end{bmatrix}}\quad k} = {{0\quad \ldots \quad 2^{n}} - 1}}$

 k=0 . . . 2^(n)−1

[0111] Provided a resultant matrix in this set of equations is well conditioned and invertible, then the set of channel impulse responses can be solved. A sampling design for the repetitions that offers near-orthogonality between repeated sequences is, however, required, such that different bases can be resolved without ill-conditioning of the equations. Such designs, as used for space-time codes, are readily available in statistics literature.

[0112] By employing the preferred embodiment of the present invention where Steiner codes supplement to point-by-point DFT multiplication mechanism, accuracy in estimated channel impulse responses is limited by channel noise rather than imperfection in the codes.

[0113] The preferred embodiment that uses Steiner codes for m base antenna elements can be used in multiple cells and MMSE channel estimation is obtainable for a number n of bases giving a total of nm downlink channels. Different cells will use a different basic PN code, whereas the elements within a single cell will use the Steiner cyclic offsets of a single PN code. The extra workload (processing overhead) involved is the inversion of an n×n matrix in each frequency bin. The inclusion of the use of Steiner codes to supplement the basic inventive concept of Wiener frequency domain MMSE deconvolution combined with frequency domain spatial decoupling matrices results in the possibility of allocating only a single training sequence to each base station provided that the training sequence is of sufficient length to encompass all the multiple time-translated channel impulse responses.

[0114] Embodiments of the invention may be implemented as computer program code encoded on a computer program product for use with a computer system. It is expected that such a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (e.g. shrink-wrapped software), preloaded with a computer system or distributed from a server or electronic bulletin board over a network (e.g. the Internet or World Wide Web). A series of computer instructions can therefore either be fixed on a tangible medium or fixed in a computer data signal embodied in a carrier wave that is transmittable to a computer system using wireline or wireless transmission techniques. For example, the present invention can find application as downloadable code in a software radio. The removable (i.e. tangible) medium may be a computer readable media, such as a diskette, CD-ROM, DVD-ROM or RAM, fixed disk, magneto-optical disks, ROMs, flash memory or magnetic or optical cards. The series of computer instructions embodies all or part of the functionality previously described herein with respect to the system.

[0115] Software embodiments of the invention may be implemented in any conventional computer programming language. For example, preferred embodiments may be implemented in a procedural programming language (e.g. “C”) or an object oriented programming language (e.g. “C++”).

[0116] Although the preferred operating method is realised by general or specific-purpose processor or logic circuits programmed with suitable machine-executable instructions, hardware components may possibly be used to implement certain features of the present invention. Of course, the present invention may be performed by a combination of hardware and software.

[0117] It will, of course, be appreciated that the above description has been given by way of example only and that modifications in detail may be made within the scope of the present invention. For example, while the preferred embodiment is has been described in relation to a multi-cast system in which each base station has a single transmit element, the present invention is clearly applicable to multi-element transmitters and to single isolated cells supporting transmissions from a single base station having a transmit array. Furthermore, while the preferred embodiment has been described in the context of a CDMA system, the present invention is generally applicable to any dispersive or imperfect channel that acts to corrupt symbols, including systems employing TDD and FDM techniques and other types of links, such as digital subscriber lines (DSL) and all digital transmission systems.

[0118] Indeed, although the technique of the preferred embodiment of the present invention has been described for a CDMA application where the number of chips in the training burst is easily identified, the principles of the present invention apply to OFDM, wavelets (e.g. Daubechies's wavelets) and any similar orthogonal or near-orthogonal signaling waveforms. With specific regard to an OFDM signal, such an OFDM signal is treated as a single wide-band modulated carrier in the time domain and an estimate of the time domain channel impulse response is made in an identical way to that described in the preferred embodiment. If a constraint is made that the duration of the impulse responses is small, the equations become algebraically soluble (or “observable” in the context of control theory jargon) and in this way a large number of parallel channels can be estimated using a single training burst.

[0119] If the duration of the OFDM training burst is N_(S) sub-carrier symbols and there are N_(F) sub-carriers then the burst effectively has N_(S)*N_(F) samples or chips which is quite a substantial number. In practice, this means that multiple channel estimation in OFDM might not be too difficult. The lower limit for the duration of the training sequences would be that it must be capable of supporting an orthogonal, or at least a linearly independent, set of codes for say m base station antennas seen from the terminal (in one or more cells). Superficially, this would require m full sub-carrier slots and for HSD with 150 μs slots we need a duration of 150 μs. However the wideband methods described here only require that the duration of the training sequence is ≧m times the duration of the channel impulse response so, for a channel with τ μs dispersion and signal bandwidth B MHz, the duration of the training sequence need only be τBm samples. For example, if the signal bandwidth is 6 MHz, the channel dispersion is 5 μs and there are seven base station antennas with channels to be determined, the minimum duration of the training sequence is 210 samples or 6×5×7/6 =35 μs, i.e. only ⅕ of a nominal sub-carrier symbol. In practice, however, this duration would need to be increased significantly (and preferably about ten-fold or so) to improve estimation accuracy.

[0120] In transmission bursts from base stations having single transmit elements, cyclic prefixes could be replaced by blank (zero) carriers to provide isolation between burst sequences.

[0121] It should be understood that reference to a base station refers to serving infrastructure irrespective of the form of air-interface adopted by the exemplary CDMA-based architecture of the preferred embodiment. In other words, the term base station should be construed broadly and, where necessary, to include references to communication relay devices. While the main applications are in channel estimation on a downlink for CDMA and OFDM in order to apply coherent soft hand-off and interference cancellation in locations where two or more base stations are at similar ranges and the weaker base stations, if ignored, cause mutual interference, the preferred embodiments are not intended to be limiting to these specific arrangements. 

We claim:
 1. A method of determining channel impulse responses of a plurality of channels to a communication device, the method comprising: performing transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) received by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; performing point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and concatenating the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel.
 2. The method according to claim 1, further comprising: separating training sequence bursts emanating from a single element transmitter by one of a cyclic prefix and a blank (zero) carrier.
 3. The method according to claim 1, wherein multiple Steiner codes are transmitted as training sequences, the multiple Steiner codes sent from multiple transmit elements in multiple training bursts.
 4. The method according to claim 3, wherein the multiple Steiner codes are transmitted from multiple elements of a base station transmit antenna.
 5. The method according to claim 1, further comprising using a set of matrix operations in the frequency domain to resolve channels to the communication device from multiple transmitting stations, the matrix operations providing solvable linear equations for the channel impulse response H and the signal sequence S expressible in a matrix-vector form at each frequency bin in terms of the received training sequence Y.
 6. The method according to claim 5, further comprising solving the linear equations using a minimum mean square error (MMSE) estimation technique.
 7. The method according to claim 6, wherein the MMSE estimation technique employs a Weiner filtering operation providing: Ĥ=(S ^(H) S+Cov(B))⁻¹ S ^(H) Y where Cov(B) is a covariance matrix of thermal noise; S^(H)Y is a matched filter operation arranged to minimize the signal to noise ratio but not to remove mutual interference between channel estimates; and (S^(H)S+Cov(B))⁻¹ is a decoupling matric that removes the coupling between different channels caused by any non-ideal nature of the training sequences.
 8. The method according to claim 2, wherein the number of bursts sent to the communication device from each transmitting unit in communication contact therewith is calculated as a multiplication of: a number of transmitting elements in a transmit array of a transmitting unit; and a number of transmitting units in communication contact with the communication device.
 9. The method according to claim 8, wherein training sequence burst between transmitting units are time-aligned.
 10. A method of determining channel impulse responses of channels incident to a communication device, the method comprising: and transmitting multiple quasi-orthogonal pseudo-noise sequences as bursts from multiple base stations each having at least one transmit element, successive bursts providing an extended training sequence for use in channel estimation at the communication device; applying a Wiener frequency domain MMSE deconvolution with frequency domain spatial decoupling matrices to generate channel impulse response estimates for the channels.
 11. The method according to claim 10, wherein the quasi-orthogonal pseudo-noise sequences are Steiner codes.
 12. The method according to claim 11, further comprising allocating only a single training sequence to each base station, the single training sequence being of sufficient length to encompass all multiple time-translated channel impulse responses.
 13. A communication device operational to receive a plurality of training sequences on a plurality of channels, the communication device comprising:
 14. A method of determining channel impulse responses of a plurality of channels established between a plurality of transmitting elements and a communication device in a communication system, the method comprising: substantially simultaneously transmitting different training bursts from each of the plurality of transmitting elements, each burst having a length at least as long as a maximum channel duration in the communication system multiplied by a number corresponding to the plurality of transmitting elements; recovering at the communication device a signal sequence y_(n) from the different training bursts s_(n); and resolving the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.
 15. A computer program product for a processor within a receiver device, the computer program product comprising: code that performs transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) received by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; code that performs point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and code that concatenates the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel; wherein the codes reside in a computer readable medium.
 16. A communication device having a receiver coupled, in use, to receive a plurality of channels supporting a signal sequence y_(n) and training sequence bursts, the communication device having: a signal processing platform to perform transform operations on both a replica of a signal sequence s_(n) and a received training sequence y_(n) received by the communication device in at least one burst, the received training sequence y_(n) being the signal sequence as received through a channel, the transform operations arranged to generate a multiplicity of signal sequence frequency bins and a multiplicity of training sequence frequency bins; the signal processing platform arranged to perform point-by-point operations between corresponding signal sequence frequency bins and training sequence frequency bins; and the signal processing platform further arranged to concatenate the point-by-point operations associated with the channel to provide a composite frequency response for the channel, the composite frequency response allowing, in the time domain, generation of the channel impulse response for the channel.
 17. The communication device according to claim 16, wherein multiple Steiner codes are transmitted as the training sequences, the multiple Steiner codes sent to the receiver through multiple channels in multiple training bursts.
 18. The communication device according to claim 16, wherein the signal processing platform operates to establish a set of matrix operations in the frequency domain to resolve channels to the communication device from multiple transmitting stations, the matrix operations providing solvable linear equations for the channel impulse response H and the training sequence S expressible in a matrix-vector form at each frequency bin.
 19. The communication device according to claim 18, wherein the signal processing platform solves the linear equations using a minimum mean square error (MMSE) estimation technique.
 20. The communication device according to claim 19, wherein the MMSE estimation technique employs a Weiner filtering operation providing: {circle over (H)}=(S ^(H) S+Cov(B))⁻¹ S ^(H) Y where: Cov(B) is a covariance matrix of thermal noise; S^(H)Y is a matched filter operation arranged to minimize the signal to noise ratio but not to remove mutual interference between channel estimates; and (S^(H)S+Cov(B))⁻¹ is a decoupling matric that removes the coupling between different channels caused by any non-ideal nature of the training sequences.
 21. A communication receiver comprising: means for receiving, in use, multiple quasi-orthogonal pseudo-noise sequences as bursts from multiple base stations each having at least one transmit element, successive bursts providing an extended training sequence for use in channel estimation at the communication receiver; and means for applying a Wiener frequency domain MMSE deconvolution with frequency domain spatial decoupling matrices to generate channel impulse response estimates for the channels.
 22. The communication receiver of claim 21, wherein the quasi-orthogonal pseudo-noise sequences are Steiner codes.
 23. A communication device operational to receive a plurality of training sequences on a plurality of channels and a signal sequence y_(n), the communication device comprising: a receiver for substantially simultaneously receiving, in use, different training bursts from each of the plurality of channels emanating from a plurality of transmit elements, each burst having a length at least as long as a maximum channel duration multiplied by a number corresponding to the plurality of transmit elements; recovery circuitry for recovering, in use, the signal sequence y_(n) from the different training bursts s_(n); and a processor arranged to resolve the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.
 24. A base station of a communication system, the base station comprising: a transmitter chain arranged to transmit multiple quasi-orthogonal pseudo-noise sequences as training bursts s_(n) from at least one transmit element and further arranged to transmit a signal sequence y_(n), successive training bursts providing an extended training sequence for use in channel estimation at a communication device of the communication system, the transmitter chain substantially simultaneously transmitting, in use, different training bursts from each of the at least one transmit element, each training burst having a length at least as long as a maximum channel duration in the communication system multiplied by a number corresponding to a plurality of channels to the communication device, the extended training sequence and the signal sequence y_(n) providing a resolution mechanism to the communication device allowing the communication device to resolving the plurality of channels to recover associated channel impulse responses H for each channel by solving an algebraic matrix operation expressed in matrix-vector form as Y=SH, where: S is a matrix of partial training bursts for each channel, each training burst segmented into N pieces in the time domain; Y is a vector of a received signal sequence; and H is a concatenation of different channel impulse response vectors.
 25. The base station of claim 24, wherein the transmit chain is further arranged to separate training bursts emanating from the at least one transmit element by one of a cyclic prefix and a blank (zero) carrier.
 26. The base station of claim 24, wherein multiple Steiner codes are transmitted as training bursts, the multiple Steiner codes sent from multiple transmit elements in multiple training bursts.
 27. The base station of claim 24, wherein the number of training bursts sent to the communication device from each base station in communication contact therewith is calculated as a multiplication of: a number of transmitting elements in a transmit array of a base station; and a number of base stations in communication contact with the communication device. 